﻿using System;
using System.Collections.Generic;
using System.Text;
using Rodunu.Movies.Contracts;

namespace Rodunu.Movies.Interfaces.Data
{
    public interface IRepository<T> where T : IIdentifier
    {
        void Create(T identifiable);
        T Find(long id);
        IList<T> FindByBase(T identifiable);
        IList<T> FindByBase(string propertyName, object propertyValue);
        IList<T> FindAll();
        void Delete(T identifiable);
        void Update(T identifiable);
    }
}
